home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 August: Tool Chest / Dev.CD Aug 00 TC Disk 2.toast / pc / sample code / quicktime / quicktime vr / vrscript.win / script syntax < prev    next >
Encoding:
Text File  |  2000-06-23  |  54.1 KB  |  1,464 lines

  1. # This is a script for directing QTVR movies.
  2. #
  3. # ••This script format is under development: any comments are welcome!••
  4. #
  5. # Tim Monroe
  6. # (monroe@apple.com)
  7. # QuickTime Engineering/Apple Computer, Inc.
  8. # 07 March 1997 et seqq.
  9. #
  10. # By putting information into this file, you can direct the embedding
  11. # of sounds, pictures, movies, 3D objects, etc. in a QuickTime VR movie.
  12. #
  13. # Here are some points to keep in mind:
  14. #
  15. # • Each command must occupy one line.
  16. # • Any line beginning with '#' is a comment and is ignored.
  17. # • Command parameters must be separated by any amount of white space.
  18. # • All angles are specified in degrees.
  19. # • Some commands (like AtClickHS) take a command line as a parameter;
  20. #    the parameter command line must have its white space replaced by '#'.
  21. #    For example: AtClickHS  1  50  0  SetBarState#2#0
  22. #    which toggles the controller bar state whenever hot spot 50 is clicked in node 1.
  23. #    Moreover, if the parameter command line itself takes a command as a
  24. #    parameter, its white space must be replaced by '%'. 
  25. # • [This space for rent.]
  26. # • 
  27. #
  28. # Here are the currently supported cast members:
  29. #
  30. # OpenQTVRMovieFile        Open and use the specified QTVR movie file. 
  31. # ReplaceMainMovie        Open the specified movie in place of the current one.
  32. # SetCurrentDirectory    Set the directory to be searched for content files.
  33. # SetBarState            Show or hide the controller bar.
  34. # SetButtonState        Show or hide a button in the controller bar.
  35. # SetResizeState        Enable or disable window resizing.
  36. # SetWindowSize            Set the current size of a movie window.
  37. # SetMaxWindowSize        Set the maximum size of a movie window.
  38. # ReplaceCursor            Replace one cursor by another.
  39. # SetHotSpotIDCursors    Replace the triad of cursors for a hot spot specified by its ID.
  40. # SetHotSpotTypeCursors    Replace the triad of cursors for all hot spots of a specified type.
  41. # GoToNodeID            Go to a node.
  42. # ShowDefaultView        Display the default view of the current node.
  43. # OpenResourceFile        Put the named resource file in the resource chain.
  44. # SetCorrection            Set the imaging correction mode.
  45. # SetQuality            Set the image quality.
  46. # SetSwingSpeed            Set the speed of swing transitions for the current node.
  47. # SetSwingDirection        Set the direction of swing transitions for the current node.
  48. # SetSwingState            Enable or disable swing transitions for the current node.
  49. # SetPanAngle            Set the pan angle.
  50. # SetTiltAngle            Set the tilt angle.
  51. # SetPanTiltZoom        Set the pan, tilt, and zoom angles (at the same time).
  52. # SetFieldOfView        Set the field of view.
  53. # SetViewCenter            Set the view center. [Object nodes only.]
  54. # SetPanLimits            Set the current pan angle limits.
  55. # SetTiltLimits            Set the current tilt angle limits.
  56. # SetZoomLimits            Set the current zoom angle limits.
  57. # SetHotSpotState        Enable or disable a hot spot.
  58. # SetTranslateState        Enable or disable object translation. [Object nodes only.]
  59. # SetClickRadius        Set the radius within which clicks occur.
  60. # SetClickTimeout        Set the timeout for clicks.
  61. # SetPanTiltSpeed        Set the pan and tilt speed.
  62. # SetZoomSpeed            Set the zoom speed.
  63. # SetMouseScale            Set the mouse-motion scale. [Object nodes only.]
  64. # SetFrameRate            Set the frame rate. [Object nodes only.]
  65. # SetViewRate            Set the view rate. [Object nodes only.]
  66. # SetViewTime            Set the current view time. [Object nodes only.]
  67. # SetViewState            Set the current view state. [Object nodes only.]
  68. # SetAnimationState        Set the animation state. [Object nodes only.]
  69. # SetControlState        Set the control state. [Object nodes only.]
  70. # SetFrameAnimState        Enable or disable frame animation. [Object nodes only.]
  71. # SetViewAnimState        Enable or disable view animation. [Object nodes only.]
  72. # SetQTVRVisState        Enable or disable QTVR movie visibility.
  73. # SetCachePrefs            Set the back buffer resolution, depth, and size.
  74. # SetMovieVolume        Set the volume of a QTVR sound track.
  75. # SetTrackVolume        Set the volume of a QuickTime sound track.
  76. # SetSoundVolume        Set the volume of a sound (a sound resource or a sound movie).
  77. # SetSoundBalance        Set the balance of a sound (a sound resource or a sound movie).
  78. # SetMatte                Set the matte for a node.
  79. # PlaySceneSound        Play a movie-wide ambient resource sound asynchronously.
  80. # PlaySceneQTMidi        Play a movie-wide ambient QuickTime sound-only file asynchronously.
  81. # PlayNodeQTMidi        Play a QuickTime sound-only file in a particular node.
  82. # PlayNodeSound            Play a sound in a particular node.
  83. # PlayNode3DSound        Play a localized sound in a particular node.
  84. # HotSpotQTMidi            Play a QuickTime sound-only file when a hot spot is clicked.
  85. # HotSpotSound            Play a sound when a particular hot spot is triggered.
  86. # HotSpot3DSound        Play a sound at a specific location when a particular hot spot is triggered.
  87. # HotSpotMovie            Play a movie when a particular hot spot is triggered.
  88. # TriggerHotSpot        Trigger a particular hot spot.
  89. # PlayQTMidi            Play a QuickTime sound-only file immediately.
  90. # PlaySndResource        Play a sound resource asynchronously.
  91. # Play3DSndResource        Play a sound resource at a specific location in a panorama.
  92. # Play3DSndResourceAnglePlay a sound resource at a specific location in a panorama, specified using angles.
  93. # ShowPicture            Overlay a PICT resource.
  94. # ShowNodePicture        Overlay a PICT resource in a particular node.
  95. # AtTime                Execute a command at a specified time.
  96. # AtAppLaunch            Execute a command when the application is launched.
  97. # AtAppQuit                Execute a command when the application is quit.
  98. # AtMouseOverHSID        Execute a command when the mouse is over a hot spot, targeted by ID.
  99. # AtMouseOverHSType        Execute a command when the mouse is over a hot spot, targeted by type.
  100. # AtClickHS                Execute a command when the mouse is clicked on a hot spot.
  101. # AtClickCustomButton    Execute a command when the mouse is clicked on the custom button in the controller bar.
  102. # AtClickSprite            Execute a command when the mouse is clicked on a sprite.
  103. # AtNodeEntry            Execute a command when the specified node is entered.
  104. # AtNodeExit            Execute a command when the specified node is exited.
  105. # AtPanAngle            Execute a command at the specified pan angle.
  106. # AtTiltAngle            Execute a command at the specified tilt angle.
  107. # AtZoomAngle            Execute a command at the specified field of view angle.
  108. # DoBoth                Execute both of the specified commands.
  109. # DoNothing                Do nothing. (Useful if an "At" command has side effects.)
  110. # Beep                    Play the system alert sound.
  111. # PlayMovie                Play a QuickTime movie at a particular location in a panorama.
  112. # PlayTransMovie        Play a QuickTime movie as a transition between nodes.
  113. # PlayTransEffect        Play a QuickTime video effect as a transition between nodes.
  114. # MoveScreen            Move the QuickTime movie screen center.
  115. # ProcessScript            Open and process a script file.
  116. # CreateBox                Create a box.
  117. # CreateCone            Create a cone.
  118. # CreateCylinder        Create a cylinder.
  119. # CreateEllipsoid        Create an ellipsoid.
  120. # CreateTorus            Create a torus.
  121. # CreateRectangle        Create a rectangle.
  122. # Open3DMFFile            Load a 3DMF file.
  123. # Set3DObjColor            Set the color of a 3D object.
  124. # Set3DObjTransp        Set the transparency level of a 3D object.
  125. # Set3DObjInterp        Set the interpolation style of a 3D object.
  126. # Set3DObjBackface        Set the backfacing style of a 3D object.
  127. # Set3DObjFill            Set the fill style of a 3D object.
  128. # Set3DObjLocation        Set the location of a 3D object.
  129. # Set3DObjRotation        Set the rotation of a 3D object.
  130. # Set3DObjRotState        Set the rotation of a 3D object on or off.
  131. # Set3DObjVisState        Set the visibility of a 3D object on or off.
  132. # Set3DObjTexture        Set the texture for a 3D object.
  133. # Destroy3DObject        Destroy a 3D object.
  134. # Set3DSndLocation        Set the location of a localized sound.
  135. # SetVariable            Set the value of a variable.
  136. # If                    Test the value of a variable and execute a command if necessary.
  137. # SetSpriteVisState        Set the visibility of a sprite on or off.
  138. # SetSpriteLayer        Set the layer of a sprite.
  139. # SetSpriteGraphicsMode    Set the graphics mode of a sprite.
  140. # SetSpriteImageIndex    Set the image index of a sprite.
  141. # SetSpriteMatrix        Set the matrix of a sprite.
  142. # SetSpriteLocation        Set the location of a sprite.
  143. # SetTrackState            Enable or disable the specified track in a movie.
  144. # SetTrackLayer            Set the layer of a specified track in a movie.
  145. # SetMovieTime            Set the current time of the specified movie.
  146. # SetMovieRate            Set the rate of the specified movie.
  147. # SetMovieTimeScale        Set the time scale of the specified movie.
  148. #
  149. #
  150. # Yet to be implemented:
  151. #
  152. # EmbedVRObject            Embed a QTVR object movie in a panorama.
  153. # AtConstraint            Execute a command when a viewing constraint is reached.
  154. # AtMouseClick            Execute a command when the mouse is clicked.
  155. # AtClickRect            Execute a command when the mouse is clicked in a rectangle.
  156. #
  157. #
  158. # •••OpenQTVRMovieFile•••
  159. # •••Use the specified QTVR movie file. A command line has this format: 
  160. # [Options are not yet defined.]
  161. #
  162. # OpenQTVRMovieFile        Options        Name
  163. #------------------        -------        ----
  164. #OpenQTVRMovieFile        0            WWDC#Demo
  165. #
  166. #
  167. # •••ReplaceMainMovie•••
  168. # •••Open the specified QuickTime movie in place of the current one. A command line has this format: 
  169. # [Overlay: 0 == keep current window size; 1 == use new movie's size for window]
  170. # [NameType: 0 == full pathname; 1 == relative pathname; 2 == full URL; 3 == relative URL]
  171. # [Options are not yet defined.]
  172. #
  173. # ReplaceMainMovie        Overlay        NameType    Options        Name
  174. #------------------        -------        --------    -------        ----
  175. #ReplaceMainMovie        0            0            0            WWDC#Demo
  176. #
  177. #
  178. # •••SetCurrentDirectory•••
  179. # •••Set the directory to be searched for content files. A command line has this format:
  180. # [Options are not yet defined.]
  181. # Note: the Pathname should be the pathname of *a file* in the desired directory.
  182. #
  183. # SetCurrentDirectory    Options        Pathname
  184. #--------------------   -------        --------
  185. SetCurrentDirectory        0            MyHardDisk:ResourceDir:FOO
  186. #
  187. #
  188. # •••SetBarState•••
  189. # •••Show or hide the controller bar. A command line has this format:
  190. # [State: 0 == hide; 1 == show; 2 == toggle current state]
  191. # [Options are not yet defined.]
  192. #
  193. # SetBarState    State    Options
  194. #------------   -----   -------
  195. SetBarState        1        0
  196. #
  197. #
  198. # •••SetButtonState•••
  199. # •••Show or hide a button (or display text) in the controller bar. A command line has this format:
  200. # [Button: 
  201. #        0 == the QuickTime step buttons (not supported by QTVR);
  202. #        1 == the speaker button;
  203. #        2 == the go-back button;
  204. #        3 == the zoom buttons;
  205. #        4 == the show hot spots button;
  206. #        5 == the translate button;
  207. #        6 == the help text;
  208. #        7 == the hot spot names]
  209. # [State: 0 == hide; 1 == show; 2 == toggle current state]
  210. # [Options are not yet defined.]
  211. #
  212. # SetButtonState    Button    State    Options
  213. #------------       ------    -----   -------
  214. #SetButtonState        1        0        0
  215. #
  216. #
  217. # •••SetResizeState•••
  218. # •••Enable or disable window resizing. A command line has this format:
  219. # [State: 0 == disable; 1 == enable; 2 == toggle current state]
  220. # [Options are not yet defined.]
  221. #
  222. # SetResizeState    State    Options
  223. #---------------    -----   -------
  224. #SetResizeState        0        0
  225. #
  226. #
  227. # •••SetWindowSize•••
  228. # •••Set the current size of a movie window. A command line has this format:
  229. # [Height and width are in pixels.]
  230. # [Options are not yet defined.]
  231. #
  232. # SetWindowSize            Height    Width        Options
  233. #--------------            ------    -----        -------
  234. #SetWindowSize            100        200            0
  235. #
  236. #
  237. # •••SetMaxWindowSize•••
  238. # •••Set the maximum size of a movie window. A command line has this format:
  239. # [Height and width are in pixels.]
  240. # [Options are not yet defined.]
  241. #
  242. # SetMaxWindowSize        Height    Width        Options
  243. #-----------------        ------    -----        -------
  244. #SetMaxWindowSize        0        0            0
  245. #
  246. #
  247. # •••ReplaceCursor•••
  248. # •••Replace one cursor by another. A command line has this format:
  249. # [Options == type of cursor to replace:
  250. #        0 == restore default cursor;
  251. #        1 == black and white cursor;
  252. #        2 == color cursor]
  253. #
  254. # ReplaceCursor        PrevID        NewID        Options
  255. #-----------         ------        -----          -------
  256. #ReplaceCursor        -19687        19687        0
  257. #
  258. #
  259. # •••SetHotSpotIDCursors•••
  260. # •••Replace the triad of cursors for a hot spot specified by its ID. A command line has this format:
  261. # [Options are not yet defined.]
  262. #
  263. # SetHotSpotIDCursors        NodeID        HotSpotID        Crsr1ID        Crsr2ID        Crsr3ID        Options
  264. #--------------------         ------        ---------        -------          -------        -------        -------
  265. #SetHotSpotIDCursors        -1            50                128            129            130            0
  266. #
  267. #
  268. # •••SetHotSpotTypeCursors•••
  269. # •••Replace the triad of cursors for all hot spots of a specified type. A command line has this format:
  270. # [Options are not yet defined.]
  271. #
  272. # SetHotSpotTypeCursors        NodeID        HotSpotType        Crsr1ID        Crsr2ID        Crsr3ID        Options
  273. #----------------------     ------        -----------        -------          -------        -------        -------
  274. #SetHotSpotTypeCursors        -1            undf            128            129            130            0
  275. #
  276. #
  277. # •••GoToNodeID•••
  278. # •••Go to the specified node. A command line has this format:
  279. # [Options are not yet defined.]
  280. #
  281. # GoToNodeID    NodeID        Options
  282. #-----------     ------      -------
  283. #GoToNodeID        1            0
  284. #
  285. #
  286. # •••ShowDefaultView•••
  287. # •••Display the default view of the current node. A command line has this format:
  288. # [Options are not yet defined.]
  289. #
  290. # ShowDefaultView    Options
  291. #----------------    -------
  292. #ShowDefaultView    0
  293. #
  294. #
  295. # •••OpenResourceFile•••
  296. # •••Use the specified resource file. A command line has this format: 
  297. # [Options are not yet defined.]
  298. #
  299. # OpenResourceFile    Options        Name
  300. #-----------------    -------        ----
  301. OpenResourceFile    0            myPICTResources
  302. OpenResourceFile    0            mySoundResources
  303. OpenResourceFile    0            StudioSounds
  304. #
  305. #
  306. # •••SetCorrection•••
  307. # •••Use the specified imaging correction mode. A command line has this format: 
  308. # [Mode is the correction mode (see VRPWQTVR2.0 p. 1-41).]
  309. # [Options is the imaging mode (see VRPWQTVR2.0 p. 1-42).]
  310. #
  311. # SetCorrection        Mode    Options
  312. #--------------        ----    -------
  313. #SetCorrection        2        100
  314. #
  315. #
  316. # •••SetQuality•••
  317. # •••Use the specified image quality. A command line has this format: 
  318. # [Quality is the image quality (see VRPWQTVR2.0 p. 1-44):]
  319. # [high == 1023; normal == 512; low == 0]
  320. # [Options is the imaging mode (see VRPWQTVR2.0 p. 1-42).]
  321. #
  322. # SetQuality        Quality        Options
  323. #-----------        -------        -------
  324. SetQuality            1023            100
  325. #
  326. #
  327. # •••SetSwingSpeed•••
  328. # •••Use the specified swing transition speed. A command line has this format: 
  329. # [Speed is the swing speed: 1 == slow; 10 == fast]
  330. # [Options are not yet defined.]
  331. #
  332. # SetSwingSpeed        Speed        Options
  333. #--------------        -------        -------
  334. SetSwingSpeed        5            0
  335. #
  336. #
  337. # •••SetSwingDirection•••
  338. # •••Use the specified swing transition direction. A command line has this format: 
  339. # [Dir is the swing direction (see VRPWQTVR2.0 p. 1-58).]
  340. # [Options are not yet defined.]
  341. #
  342. # SetSwingDirection        Dir        Options
  343. #------------------        ---        -------
  344. #SetSwingDirection        0        0
  345. #
  346. #
  347. # •••SetSwingState•••
  348. # •••Enable or disable swing transitions for the current node. A command line has this format: 
  349. # [State: 0 == disable; 1 == enable]
  350. # [Options are not yet defined.]
  351. #
  352. # SetSwingState        State    Options
  353. #--------------        ---        -------
  354. #SetSwingState        1        0
  355. #
  356. #
  357. # •••SetPanAngle•••
  358. # •••Set the pan angle. A command line has this format: 
  359. # [Options: 0 == angle is absolute; 1 == angle is relative]
  360. #
  361. # SetPanAngle        Pan        Options
  362. #--------------        ----    -------
  363. #SetPanAngle        90.0    0
  364. #
  365. #
  366. # •••SetTiltAngle•••
  367. # •••Set the tilt angle. A command line has this format: 
  368. # [Options: 0 == angle is absolute; 1 == angle is relative]
  369. #
  370. # SetTiltAngle        Tilt    Options
  371. #--------------        ----    -------
  372. #SetTiltAngle        0.0        0
  373. #
  374. #
  375. # •••SetPanTiltZoom•••
  376. # •••Set the pan, tilt and zoom angles. A command line has this format: 
  377. # [Mode: 0 == jump transition; 1 == swing transition; 2 == blocking swing transition]
  378. # [Options: 0 == angles are absolute; 1 == angles are relative]
  379. #
  380. # SetPanTiltZoom    Pan        Tilt    Zoom    Mode    Options
  381. #--------------        ---        ----    ----    ----    -------
  382. #SetPanTiltZoom        0.0        0.0        0.0        0        0
  383. #
  384. #
  385. # •••SetFieldOfView•••
  386. # •••Set the field of view angle. A command line has this format: 
  387. # [Options: 0 == angle is absolute; 1 == angle is relative]
  388. #
  389. # SetFieldOfView    FOV        Options
  390. #--------------        ----    -------
  391. #SetFieldOfView        30.0    0
  392. #
  393. #
  394. # •••SetViewCenter•••
  395. # •••Set the view center. A command line has this format: 
  396. # [Options are not yet defined.]
  397. #
  398. # SetViewCenter        xCoord    yCoord    Options
  399. #-------------        ------    ------    -------
  400. #SetViewCenter
  401. #
  402. #
  403. # •••SetPanLimits•••
  404. # •••Set the current pan angle constraints. A command line has this format: 
  405. # [Options: 0 == angle is absolute; 1 == angle is relative]
  406. #
  407. # SetPanLimits        Min        Max        Options
  408. #-------------        ---        ---        -------
  409. #SetPanLimits        0.0        180.0    0
  410. #SetPanLimits        0.0        90.0    1
  411. #
  412. #
  413. # •••SetTiltLimits•••
  414. # •••Set the current tilt angle constraints. A command line has this format: 
  415. # [Options: 0 == angle is absolute; 1 == angle is relative]
  416. #
  417. # SetTiltLimits        Min        Max        Options
  418. #-------------        ---        ---        -------
  419. #SetTiltLimits        -25.0    25.0    0
  420. #
  421. #
  422. # •••SetZoomLimits•••
  423. # •••Set the current filed of view angle constraints. A command line has this format: 
  424. # [Options: 0 == angle is absolute; 1 == angle is relative]
  425. #
  426. # SetZoomLimits        Min        Max        Options
  427. #-------------        ---        ---        -------
  428. #SetZoomLimits        1.0        90.0    0
  429. #
  430. #
  431. # •••SetHotSpotState•••
  432. # •••Set the state of a hot spot. A command line has this format:
  433. # [State: 0 == disable; 1 == enable]
  434. # [Options are the hot spot enable flags (see VRPWQTVR2.0 p. 1-50).]
  435. #
  436. # SetHotSpotState    HotSpotID    State    Options
  437. #----------------   ---------    -----   -------
  438. #SetHotSpotState        50            1        0
  439. #
  440. #
  441. # •••SetTranslateState•••
  442. # •••Set the state of object translation. A command line has this format:
  443. # [State: 0 == disable; 1 == enable]
  444. # [Options are not yet defined.]
  445. #
  446. # SetTranslateState        State    Options
  447. #------------------     -----   -------
  448. #SetTranslateState        0        0
  449. #
  450. #
  451. # •••SetClickRadius•••
  452. # •••Set the radius within which clicks occur (the mouse-click hysteresis). A command line has this format:
  453. # [Options are not yet defined.]
  454. #
  455. # SetClickRadius    Radius        Options
  456. #---------------    ------        -------
  457. #SetClickRadius        2            0
  458. #
  459. #
  460. # •••SetClickTimeout•••
  461. # •••Set the timeout for clicks. A command line has this format:
  462. # [Options are not yet defined.]
  463. #
  464. # SetClickTimeout    Ticks        Options
  465. #----------------   ------        -------
  466. #SetClickTimeout        10            0
  467. #
  468. #
  469. # •••SetPanTiltSpeed•••
  470. # •••Set the pan and tilt speed. A command line has this format:
  471. # [Options are not yet defined.]
  472. #
  473. # SetPanTiltSpeed    Speed        Options
  474. #----------------   -----        -------
  475. #SetPanTiltSpeed        5            0
  476. #
  477. #
  478. # •••SetZoomSpeed•••
  479. # •••Set the zoom speed. A command line has this format:
  480. # [Options are not yet defined.]
  481. #
  482. # SetZoomSpeed    Speed        Options
  483. #-------------  -----        -------
  484. #SetZoomSpeed    10            0
  485. #
  486. #
  487. # •••SetMouseScale•••
  488. # •••Set the mouse-motion scale. A command line has this format:
  489. # [Options are not yet defined.]
  490. #
  491. # SetMouseScale        Scale        Options
  492. #--------------      -----        -------
  493. #SetMouseScale        90.0        0
  494. #
  495. #
  496. # •••SetFrameRate•••
  497. # •••Set the frame rate of an object node. A command line has this format:
  498. # [Options: 0 == rate is absolute; 1 == rate is relative]
  499. #
  500. # SetFrameRate        Rate        Options
  501. #-------------      ----        -------
  502. #SetFrameRate        50.0        0
  503. #
  504. #
  505. # •••SetViewRate•••
  506. # •••Set the view rate of an object node. A command line has this format:
  507. # [Options: 0 == rate is absolute; 1 == rate is relative]
  508. #
  509. # SetViewRate        Rate        Options
  510. #------------          ----        -------
  511. #SetViewRate        50.0        0
  512. #
  513. #
  514. # •••SetViewTime•••
  515. # •••Set the current view time of an object node. A command line has this format:
  516. # [Options: 0 == time is absolute; 1 == time is relative]
  517. #
  518. # SetViewTime        Time        Options
  519. #------------          ----        -------
  520. #SetViewTime        50.0        0
  521. #
  522. #
  523. # •••SetViewState•••
  524. # •••Set the current view state of an object node. A command line has this format:
  525. # [Options are not yet defined.]
  526. #
  527. # SetViewState        Type        State        Options
  528. #-------------      ----        -----        -------
  529. #SetViewState        0            0            0
  530. #
  531. #
  532. # •••SetAnimationState•••
  533. # •••Set the animation state of an object node. A command line has this format:
  534. # [Options are not yet defined.]
  535. #
  536. # SetAnimationState        Setting        State        Options
  537. #------------------      -------        -----        -------
  538. #SetAnimationState        0            0            0
  539. #
  540. #
  541. # •••SetControlState•••
  542. # •••Set the control state of an object node. A command line has this format:
  543. # [Options are not yet defined.]
  544. #
  545. # SetControlState        Setting        State        Options
  546. #----------------          -------        -----        -------
  547. #SetControlState        0            0            0
  548. #
  549. #
  550. # •••SetFrameAnimState•••
  551. # •••Enable or disable frame animation in an object node. A command line has this format:
  552. # [Options are not yet defined.]
  553. #
  554. # SetFrameAnimState        State        Options
  555. #------------------          -----        -------
  556. #SetFrameAnimState        0            0
  557. #
  558. #
  559. # •••SetViewAnimState•••
  560. # •••Enable or disable view animation in an object node. A command line has this format:
  561. # [Options are not yet defined.]
  562. #
  563. # SetViewAnimState        State        Options
  564. #------------------          -----        -------
  565. #SetViewAnimState        0            0
  566. #
  567. #
  568. # •••SetQTVRVisState•••
  569. # •••Enable or disable QTVR movie visibility. A command line has this format:
  570. # [Options are not yet defined.]
  571. #
  572. # SetQTVRVisState        State        Options
  573. #------------------          -----        -------
  574. #SetQTVRVisState        0            0
  575. #
  576. #
  577. # •••SetCachePrefs•••
  578. # •••Set the back buffer resolution, depth, and size. A command line has this format:
  579. # [Options are not yet defined.]
  580. #
  581. # SetCachePrefs        Resolution        Depth        Size        Options
  582. #--------------      ----------        -----        ----        -------
  583. #SetCachePrefs        1                32            1            0
  584. #
  585. #
  586. # •••SetMovieVolume•••
  587. # •••Set the volume of a QTVR sound track. A command line has this format:
  588. # [Options are not yet defined.]
  589. #
  590. # SetMovieVolume    Volume        Options
  591. #---------------     ------        -------
  592. #SetMovieVolume        0            0
  593. #
  594. #
  595. # •••SetTrackVolume•••
  596. # •••Set the volume of a QuickTime sound track. A command line has this format:
  597. # [ObjID: the object ID of the movie that contains the sound track]
  598. # [Volume: an integer between 0 and 256]
  599. # [Index: the track's index]
  600. # [if Options == 0, value is absolute; if Options == 1, value is relative]
  601. #
  602. # SetTrackVolume    ObjID        Volume        Index        Options
  603. #---------------     -----        ------        -----        -------
  604. SetTrackVolume        100            256            1            0
  605. #
  606. #
  607. # •••SetSoundVolume•••
  608. # •••Set the volume of a sound. A command line has this format:
  609. # [Volume: an integer between 0 and 256]
  610. # [Options are not yet defined.]
  611. #
  612. # SetSoundVolume    ObjID        Volume        Options
  613. #---------------     -----        ------        -------
  614. #SetSoundVolume        100            0            0
  615. #
  616. #
  617. # •••SetSoundBalance•••
  618. # •••Set the balance of a sound. A command line has this format:
  619. # [Options are not yet defined.]
  620. #
  621. # SetSoundBalance    ObjID        Left%        Right%        Options
  622. #---------------     -----        -----        ------        -------
  623. #SetSoundBalance    100            0            0            0
  624. #
  625. # •••SetMatte•••
  626. # •••Set the matte for a node. A command line has this format:
  627. # [Options are not yet defined.]
  628. #
  629. # SetMatte    Options        File
  630. #---------     -------        ----
  631. SetMatte    0            myMatteFile
  632. #
  633. #
  634. # •••PlaySceneSound•••
  635. # •••Play a movie-wide ambient resource sound asynchronously.
  636. # [Mode:     0 == loop; 1 == once]
  637. # [Fade:     Do we fade out gradually when stopping sounds?]
  638. # [Options: 0 == play entire sound now (whether or not it's already playing)
  639. #            1 == restart sound;
  640. #            2 == toggle current state;
  641. #            3 == start sound if not playing, otherwise ignore;
  642. #            4 == stop sound]
  643. #
  644. # PlaySceneSound        ResID    ObjID    Mode    Fade    Options
  645. #---------------        -----    -----    ----    ----    -------
  646. PlaySceneSound            25876    144        1        0        0
  647. #
  648. #
  649. # •••PlaySceneQTMidi•••
  650. # •••Play a movie-wide ambient QuickTime sound-only file asynchronously.
  651. # [Mode:     0 == loop; 1 == once]
  652. # [Fade:     Do we fade out gradually when stopping sounds? NOT YET SUPPORTED]
  653. # [Options: 0 == play entire sound now (whether or not it's already playing)
  654. #            1 == restart sound;
  655. #            2 == toggle current state;
  656. #            3 == start sound if not playing, otherwise ignore;
  657. #            4 == stop sound]
  658. #
  659. # PlaySceneQTMidi    ObjID    Local    xCoord    yCoord    zCoord    ProjAngle    Mode    Fade    Options        File
  660. #----------------    -----    -----    ------    ------    ------    ---------    ----    ----    -------        ----
  661. #PlaySceneQTMidi    144        1        1.0        0.0        0.0        180.0        0        0        2            ROCKET.MOV
  662. #
  663. #
  664. # •••PlayNodeQTMidi•••
  665. # •••Play a QuickTime sound-only file in a particular node. A command line has this format:
  666. # [Mode:     0 == loop; 1 == once]
  667. # [Fade:     Do we fade out gradually when stopping sounds? NOT YET SUPPORTED]
  668. # [Options: 0 == play entire sound now (whether or not it's already playing)
  669. #            1 == restart sound;
  670. #            2 == toggle current state;
  671. #            3 == start sound if not playing, otherwise ignore;
  672. #            4 == stop sound]
  673. #
  674. # PlayNodeQTMidi    NodeID    ObjID    MaxTimes    Local    xCoord    yCoord    zCoord    ProjAngle    Mode    Fade    Options        File
  675. #---------------    ------  -----    --------    -----    ------    ------    ------    ---------    ----    ----    -------        ----
  676. #PlayNodeQTMidi        12        144        -1            1        1.0        0.0        0.0        180.0        0        0        2            ROCKET.MOV
  677. #
  678. #
  679. # •••PlayNodeSound•••
  680. # •••Play a sound in a particular node. A command line has this format:
  681. # [Mode:     0 == loop; 1 == once]
  682. # [Fade:     Do we fade out gradually when stopping sounds?]
  683. # [Options: 0 == play entire sound now (whether or not it's already playing);
  684. #            1 == restart sound;
  685. #            2 == toggle current state;
  686. #            3 == start sound if not playing, otherwise ignore]
  687. #
  688. # PlayNodeSound        ResID    NodeID    ObjID    MaxTimes    Mode    Fade    Options
  689. #--------------       -----   ------  -----    --------    ----    ----    -------
  690. #PlayNodeSound        128        1        100        -1            1        1        0
  691. #
  692. #
  693. # •••PlayNode3DSound•••
  694. # •••Play a 3D sound in a particular node. A command line has this format:
  695. # [SMode:     0 == unfiltered; 1 == localized; 2 == ambient; 3 == binaural]
  696. # [Mode:     0 == loop; 1 == once]
  697. # [Fade:     Do we fade out gradually when stopping sounds?]
  698. # [Options: 0 == play entire sound now (whether or not it's already playing);
  699. #            1 == restart sound;
  700. #            2 == toggle current state;
  701. #            3 == start sound if not playing, otherwise ignore;
  702. #            4 == stop sound]
  703. #
  704. # PlayNode3DSound    ResID    NodeID    ObjID    xCoord    yCoord    zCoord    ProjAngle    SMode    MaxTimes    Mode    Fade    Options
  705. #----------------      -----   ------  -----    ------    ------    ------    ---------    -----    --------    ----    ----    -------
  706. #PlayNode3DSound    28000    1        223        1.0        0.0        0.0        1.0            1        -1            1        1        0
  707. #
  708. #
  709. # •••HotSpotQTMidi•••
  710. # •••Play a QuickTime sound-only file when a hot spot is clicked. A command line has this format:
  711. # [Mode:     0 == loop; 1 == once]
  712. # [Fade:     Do we fade out gradually when stopping sounds? NOT YET SUPPORTED]
  713. # [Options: 0 == play entire sound now (whether or not it's already playing)
  714. #            1 == restart sound;
  715. #            2 == toggle current state;
  716. #            3 == start sound if not playing, otherwise ignore;
  717. #            4 == stop sound]
  718. #
  719. # HotSpotQTMidi        NodeID    HotSpotID    ObjID    MaxTimes    Local    xCoord    yCoord    zCoord    ProjAngle    Mode    Fade    Options        File
  720. #-----------        ------  ---------    -----    --------    -----    ------    ------    ------    ---------    ----    ----    -------        ----
  721. #HotSpotQTMidi        1        50            145        -1            1        1.0        0.0        0.0        180.0        0        0        2            ROCKET.MOV
  722. #
  723. #
  724. #
  725. # •••HotSpotSound•••
  726. # •••Play a sound when a hot spot is clicked. A command line has this format:
  727. # [Mode:     0 == loop; 1 == once]
  728. # [Fade:     Do we fade out gradually when stopping sounds?]
  729. # [Options: 0 == play entire sound now (whether or not it's already playing);
  730. #            1 == restart sound;
  731. #            2 == toggle current state;
  732. #            3 == start sound if not playing, otherwise ignore;
  733. #            4 == stop sound]
  734. #
  735. # HotSpotSound        ResID    NodeID    HotSpotID    ObjID    MaxTimes    Mode    Fade    Options
  736. #-------------       -----   ------  ---------    -----    --------    ----    ----    -------
  737. HotSpotSound        128        1        10            100        -1            1        1        1
  738. HotSpotSound        129        1        30            101        -1            1        1        1
  739. HotSpotSound        130        1        40            102        -1            1        1        1
  740. #HotSpotSound        28000    1        50            103        -1            1        1        2
  741. #HotSpotSound        132        1        60            104        -1            0        1        2
  742. #
  743. #
  744. #HotSpotSound        128        1        61            105        -1            1        1        0
  745. #HotSpotSound        129        2        169            106        -1            1        1        0
  746. #HotSpotSound        130        2        114            107        -1            1        1        0
  747. #
  748. #
  749. # •••HotSpot3DSound•••
  750. # •••Play a 3D sound when a hot spot is clicked. A command line has this format:
  751. # [SMode:     0 == unfiltered; 1 == localized; 2 == ambient; 3 == binaural]
  752. # [Mode:     0 == loop; 1 == once]
  753. # [Fade:     Do we fade out gradually when stopping sounds?]
  754. # [Options: 0 == play entire sound now (whether or not it's already playing);
  755. #            1 == restart sound;
  756. #            2 == toggle current state;
  757. #            3 == start sound if not playing, otherwise ignore;
  758. #            4 == stop sound]
  759. #
  760. # HotSpot3DSound    ResID    NodeID    HotSpotID    ObjID    xCoord    yCoord    zCoord    ProjAngle    SMode    MaxTimes    Mode    Fade    Options
  761. #---------------       -----   ------  ---------    -----    ------    ------    ------    ---------    -----    --------    ----    ----    -------
  762. #HotSpot3DSound        28000    1        50            222        1.0        0.0        0.0        180.0        1        -1            1        1        1
  763. HotSpot3DSound        4748    1        60            133        -2.0    0.0        -2.0    90.0        1        -1            0        1        2
  764. #
  765. #
  766. # •••HotSpotMovie•••
  767. # •••Play a movie when a hot spot is clicked. A command line has this format:
  768. # [Mode:     0 == loop; 1 == once]
  769. # [Options: 0 == play entire movie now (whether or not it's already playing);
  770. #            1 == restart movie;
  771. #            2 == toggle current state;
  772. #            3 == start movie if not playing, otherwise ignore;
  773. #            4 == stop movie]
  774. # [Rotate:     0 == don't rotate; 1 == rotate]
  775. #
  776. # HotSpotMovie    ObjID    NodeID    HotSpotID    Pan        Tilt    Scale    Width    KeyRed    KeyGreen    KeyBlue        UseBuffer    UseCenter    UseKey    UseHide    UseDir    Rotate    VolAngle    MaxTimes    Mode    Options        Name
  777. #-------------  -----    ------     ---------    ---        ----    -----    -----    ------    --------    -------        ---------    ---------    ------    -------    ------    ------    --------    --------    ----    -------        ----
  778. HotSpotMovie    213        1        50            0.0        0.0        1.0        40.0    0        0            0            1            1            1        0        1        1        90.0        -1            0        3            RailwayRot.mov
  779. #HotSpotMovie    277        8        131            7.0        30.0    1.0        40.0    0        0            0            1            1            1        0        1        1        90.0        -1            1        3            myMovie
  780. #
  781. #
  782. # •••TriggerHotSpot•••
  783. # •••Trigger a particular hot spot. A command line has this format:
  784. # [Options are not yet defined.]
  785. #
  786. # TriggerHotSpot    HotSpotID    Options
  787. #---------------    ---------    -------
  788. #TriggerHotSpot        40            0
  789. #
  790. #
  791. # •••PlayQTMidi•••
  792. # •••Play a QuickTime sound-only file immediately. A command line has this format:
  793. # [Mode:     0 == loop; 1 == once]
  794. # [Fade:     Do we fade out gradually when stopping sounds? NOT YET SUPPORTED]
  795. # [Options: 0 == play entire sound now (whether or not it's already playing)
  796. #            1 == restart sound;
  797. #            2 == toggle current state;
  798. #            3 == start sound if not playing, otherwise ignore;
  799. #            4 == stop sound]
  800. #
  801. # PlayQTMidi    ObjID    Local    xCoord    yCoord    zCoord    ProjAngle    Mode    Fade    Options        File
  802. #-----------    -----    -----    ------    ------    ------    ---------    ----    ----    -------        ----
  803. #PlayQTMidi        144        1        1.0        0.0        0.0        180.0        1        0        2            mission2.midMovie
  804. #
  805. #
  806. # •••PlaySndResource•••
  807. # •••PlaySound is an obsolete synonym•••
  808. # •••Play an ambient sound resource immediately. A command line has this format:
  809. # [Mode:     0 == loop; 1 == once]
  810. # [Fade:     Do we fade out gradually when stopping sounds?]
  811. # [Options: 0 == play entire sound now (whether or not it's already playing)
  812. #            1 == restart sound;
  813. #            2 == toggle current state;
  814. #            3 == start sound if not playing, otherwise ignore;
  815. #            4 == stop sound]
  816. #
  817. # PlaySndResource        ResID    ObjID    Mode    Fade    Options
  818. #----------------        -----    -----    ----    ----    -------
  819. #PlaySndResource        25876    144        1        0        0
  820. #
  821. #
  822. # •••PlaySoundFile•••
  823. # •••Play an ambient sound file immediately. A command line has this format:
  824. # [Mode:     0 == loop; 1 == once]
  825. # [Fade:     Do we fade out gradually when stopping sounds?]
  826. # [Options: 0 == play entire sound now (whether or not it's already playing)
  827. #            1 == restart sound;
  828. #            2 == toggle current state;
  829. #            3 == start sound if not playing, otherwise ignore;
  830. #            4 == stop sound]
  831. #
  832. # PlaySoundFile            ObjID    Mode    Fade    Options        File
  833. #--------------            -----    ----    ----    -------        ----
  834. #PlaySoundFile            145        1        0        0            foo
  835. #
  836. #
  837. # •••Play3DSndResource•••
  838. # •••Play a sound at a specific location in a panorama. A command line has this format:
  839. # [SMode:     0 == unfiltered; 1 == localized; 2 == ambient; 3 == binaural]
  840. # [Mode:     0 == loop; 1 == once]
  841. # [Fade:     Do we fade out gradually when stopping sounds?]
  842. # [Options: 0 == play entire sound now (whether or not it's already playing)
  843. #            1 == restart sound;
  844. #            2 == toggle current state;
  845. #            3 == start sound if not playing, otherwise ignore;
  846. #            4 == stop sound]
  847. #
  848. # Play3DSndResource    ResID    ObjID    xCoord    yCoord    zCoord    ProjAngle    SMode    Mode    Fade    Options
  849. #------------   -----   -----    ------    ------    ------    ---------    -----    ----    ----    -------
  850. #Play3DSndResource    25753    128        0.0        0.0        -2.0    1.0            1        1        1        1
  851. #Play3DSndResource    7074    555        1.0        0.0        0.0        1.0            1        1        1        1
  852. #Play3DSndResource    25876    130        1.0        0.0        1.0        1.0            1        0        1        2
  853. #Play3DSndResource    4680    131        1.0        0.0        -1.0    1.0            1        0        1        0
  854. #Play3DSndResource    4748    133        0.0        0.0        -1.0    1.0            1        0        0        2
  855. #Play3DSndResource    133        129        1.0        0.0        0.0        1.0            1        0        1        2
  856. #Play3DSndResource    134        130        5.0        0.0        0.0        1.0            1        0        1        2
  857. #
  858. #
  859. # •••Play3DSndResourceAngle•••
  860. # •••Play a sound at a specific location in a panorama, specified using angles. A command line has this format:
  861. # [SMode:     0 == unfiltered; 1 == localized; 2 == ambient; 3 == binaural]
  862. # [Mode:     0 == loop; 1 == once]
  863. # [Fade:     Do we fade out gradually when stopping sounds?]
  864. # [Options: 0 == play entire sound now (whether or not it's already playing)
  865. #            1 == restart sound;
  866. #            2 == toggle current state;
  867. #            3 == start sound if not playing, otherwise ignore;
  868. #            4 == stop sound]
  869. #
  870. # Play3DSndResourceAngle    ResID    ObjID    Pan        Tilt    Distance    ProjAngle    SMode    Mode    Fade    Options
  871. #-----------------  -----   -----    ---     ----    --------    ---------    -----    ----    ----    -------
  872. #Play3DSndResourceAngle    9014    128        0.0        0.0        3.0            1.0            1        1        1        0
  873. #Play3DSndResourceAngle    133        129        -90.0    0.0        1.0            1.0            1        1        1        0
  874. #
  875. #
  876. # •••ShowPicture•••
  877. # •••Overlay a picture in the front buffer. A command line has this format:
  878. # [if Height and Width == 32000, picture occupies entire movie box]
  879. # [PegSide: a bit field: 12 = bottom right; 3 = upper left]
  880. # [Options: 0 == show picture now (whether or not it's already displayed)
  881. #            1 == show picture;
  882. #            2 == toggle current state;
  883. #            3 == show picture;
  884. #            4 == hide picture]
  885. #
  886. # ShowPicture    ResID    ObjID    Height    Width    PegSide        Offset    Options
  887. #------------   -----   -----  ------  -----    -------        ------    -------
  888. #ShowPicture    128        111        32        32        12            5        0
  889. #ShowPicture    128        333        32        32        12            5        0
  890. #
  891. #
  892. # •••ShowNodePicture•••
  893. # •••Overlay a picture in the front buffer in a particular node. A command line has this format:
  894. # [if Height and Width == -1, picture occupies entire movie box]
  895. # [PegSide: a bit field: 12 = bottom right; 3 = upper left]
  896. # [Options: 0 == show picture now (whether or not it's already displayed)
  897. #            1 == show picture;
  898. #            2 == toggle current state;
  899. #            3 == show picture;
  900. #            4 == hide picture]
  901. #
  902. # ShowNodePicture    ResID    ObjID    NodeID    Height    Width    PegSide        Offset    Options
  903. #----------------   -----   -----    ------  ------  -----    -------        ------    -------
  904. ShowNodePicture        128        333        -1        32        32        12            5        0
  905. #ShowNodePicture    128        444        2        32        32        12            5        0
  906. #
  907. #
  908. # •••AtTime•••
  909. # •••Execute a command at a given time. A command line has this format:
  910. # [Mode: 0 == absolute; 1 == node relative; 2 == install-time relative]
  911. # [Options: 0 == let unexpired commands remain enlisted; 1 == kill unexpired commands]
  912. #
  913. # AtTime    Ticks    Mode    NodeID    Repeat    Period    MaxTimes    Options        Command line
  914. #-------    -----    ----    ------    ------    ------    --------    -------        ------------
  915. #AtTime        200        1        12        0        0        10            0            PlaySndResource#28000#234#0#1#0        
  916. #AtTime        200        1        12        0        0        10            0            Set3DObjRotState#200#1#0        
  917. #AtTime        300        1        12        1        75        10            0            Set3DObjTexture#200#0#0#QD3D    
  918. #AtTime        350        1        12        1        75        10            0            Set3DObjTexture#200#0#0#tiles    
  919. #AtTime        1200    0        1        0        0        10            0            OverlayPICT#128#1#32#32#12#5#1
  920. #AtTime        600        1        1        0        0        10            0            SetBarState#0#0
  921. #AtTime        300        1        1        1        1        -1            0            SetPanAngle#2.0#1
  922. #AtTime        600        1        2        1        300        10            0            Beep
  923. #AtTime        600        0        1        1        1        10            0            MoveScreen#1.0#0.0#0
  924. #AtTime        600        1        2        0        0        10            0            GoToNodeID#1#0
  925. AtTime        300        1        1        0        0        10            0            ProcessScript#0#earthquake.scr
  926. #
  927. #
  928. #
  929. # •••AtAppLaunch•••
  930. # •••Execute a command when the application is launched. A command line has this format:
  931. # [Options are not yet defined.]
  932. #
  933. # AtAppLaunch    Options        Command line
  934. #------------   -------        ------------
  935. #AtAppLaunch        0            SetSwingState#1#0
  936. #
  937. #
  938. # •••AtAppQuit•••
  939. # •••Execute a command when the application is quit. A command line has this format:
  940. # [Options are not yet defined.]
  941. #
  942. # AtAppQuit        Options        Command line
  943. #---------      -------        ------------
  944. #AtAppQuit        0            Beep
  945. #
  946. #
  947. # •••AtMouseOverHSID•••
  948. # •••Execute a command when the mouse is over a hot spot, targeted by ID. A command line has this format:
  949. # [Options are the hot spot action selectors (see VRPWQTVR2.0 p. 1-39).]
  950. #
  951. # AtMouseOverHSID        NodeID    HotSpotID    MaxTimes    Options        Command line
  952. #----------------          ------    ---------    --------    -------        ------------
  953. #AtMouseOverHSID        1        10            -1            0            Beep
  954. #AtMouseOverHSID        7        24            1            0            DoBoth#0#Set3DObjTexture%200%1%0%Seen#AtMouseOverHS%7%24%1%0%Set3DObjTexture&200&1&0&JumpRope
  955. #AtMouseOverHSID        7        24            1            0            Set3DObjTexture#200#1#0#Seen
  956. #AtMouseOverHSID        7        24            1            0            AtMouseOverHS#7#24#1#0#Set3DObjTexture%200%1%0%JumpRope
  957. #AtMouseOverHSID        8        126            -1            0            PlaySndResource#14615#235#0#0#0
  958. #
  959. #
  960. # •••AtMouseOverHSType•••
  961. # •••Execute a command when the mouse is over a hot spot, targeted by type. A command line has this format:
  962. # [Options are the hot spot action selectors (see VRPWQTVR2.0 p. 1-39).]
  963. #
  964. # AtMouseOverHSType        NodeID    HotSpotType    MaxTimes    Options        Command line
  965. #------------------          ------    ---------    --------    -------        ------------
  966. #AtMouseOverHSType        1        undf        -1            0            Beep
  967. #AtMouseOverHSType        7        undf        1            0            DoBoth#0#Set3DObjTexture%200%1%0%Seen#AtMouseOverHS%7%24%1%0%Set3DObjTexture&200&1&0&JumpRope
  968. #
  969. #
  970. # •••AtClickHSID•••
  971. # •••AtClickHS•••[original name]
  972. # •••Execute a command when the mouse is clicked on a hot spot, targeted by ID. A command line has this format:
  973. # [Options: 1 == cancel any existing link; 0 == follow any existing link]
  974. #
  975. # AtClickHSID        NodeID    HotSpotID    MaxTimes    Options        Command line
  976. #----------              ------    ---------    --------    -------        ------------
  977. AtClickHS            1        40            -1            0            ShowPicture#128#333#32#32#12#5#2
  978. #AtClickHS            1        54            -1            0            PlaySndResource#19699#236#1#0#0
  979. AtClickHS            1        54            -1            0            AtTime#30#1#49#0#0#-1#0#PlaySndResource%20787%237%1%0%0
  980. AtClickHS            1        54            -1            0            AtTime#100#1#49#0#0#-1#0#TriggerHotSpot%72%0
  981. #AtClickHS            8        131            -1            0            PlayMovie#222#0.0#10.0#1.0#40.0#0000#0000#0000#1#1#1#0#1#1#90.0#0#JumpRope
  982. #
  983. #
  984. # •••AtClickHSType•••
  985. # •••Execute a command when the mouse is clicked on a hot spot, targeted by type. A command line has this format:
  986. # [Options: 1 == cancel any existing link; 0 == follow any existing link]
  987. #
  988. # AtClickHSType        NodeID    HotSpotType    MaxTimes    Options        Command line
  989. #----------              ------    ---------    --------    -------        ------------
  990. #
  991. #
  992. #
  993. # •••AtClickCustomButton•••
  994. # •••Execute a command when the mouse is clicked on the custom button in the controller bar. A command line has this format:
  995. # [Options are not yet defined.]
  996. #
  997. # AtClickCustomButton        NodeID    MaxTimes    Options        Command line
  998. #--------------------        ------    --------    -------        ------------
  999. AtClickCustomButton            1        -1            0            Beep
  1000. #
  1001. #
  1002. # •••AtClickSprite•••
  1003. # •••Execute a command when the mouse is clicked on a sprite. A command line has this format:
  1004. # [If SpriteIndex == -1, any sprite matches]
  1005. #
  1006. # AtClickSprite        NodeID    MaxTimes    SpriteIndex        Command line
  1007. #--------------        ------    --------    -----------        ------------
  1008. AtClickSprite        1        -1            1                Beep
  1009. #
  1010. #
  1011. # •••AtNodeEntry•••
  1012. # •••Execute a command when the specified node is entered. A command line has this format:
  1013. # [If NodeID == -1, any entered node is okay.]
  1014. # [Options are not yet defined.]
  1015. #
  1016. # AtNodeEntry    NodeID    MaxTimes    Options        Command line
  1017. #------------      ------    --------    --------    ------------
  1018. AtNodeEntry        49        -1            0            PlaySndResource#19699#238#1#1#0
  1019. AtNodeEntry        52        -1            0            PlaySndResource#28000#239#0#1#0
  1020. AtNodeEntry        8        1            0            SetPanTiltZoom#55.0#10.0#15.0#0
  1021. AtNodeEntry        8        10            0            PlaySndResource#22212#240#0#0#0
  1022. #AtNodeEntry    -1        -1            0            AtPanAngle#-1#80.0#90.0#3#0#PlaySndResource%30600%334%0%1%0
  1023. #AtNodeEntry    2        10            0            AtTime#600#1#2#0#0#-1#0#GoToNodeID%1%0
  1024. #AtNodeEntry        12        2            0            PlaySndResource#1521#241#0#1#0
  1025. AtNodeEntry        7        -1            0            Set3DObjVisState#200#1#0
  1026. AtNodeEntry        7        -1            0            Set3DObjTexture#200#0#0#ScreenPICT
  1027. AtNodeEntry        7        -1            0            Set3DObjVisState#200#1#0
  1028. AtNodeEntry        7        -1            0            AtClickHS#7#24#1#1#ProcessScript%0%tv1stclick.scr
  1029. AtNodeEntry        12        -1            0            Set3DObjVisState#203#1#0
  1030. #AtNodeEntry        12        -1            0            AtTime#200#1#12#0#0#10#0#PlaySndResource%28000%333%0%0%0    
  1031. AtNodeEntry        8        -1            0            Set3DObjVisState#504#1#0
  1032. #
  1033. #
  1034. #
  1035. #
  1036. ## •••AtNodeExit•••
  1037. # •••Execute a command when the specified node is left (AND BEFORE THE NEW NODE IS ENTERED!). A command line has this format:
  1038. # [If FromID == -1, any exited node is okay; if ToID == -1, any entered node is okay.]
  1039. # [Therefore, if FromID == ToID == -1, the command is executed for any node transition.]
  1040. # [Options: 1 == cancel the node exit; 0 == exit the node]
  1041. #
  1042. # AtNodeExit    FromID    ToID    MaxTimes    Options        Command line
  1043. #------------      ------    ----    --------    -------        ------------
  1044. AtNodeExit        49        2        -1            0            AtNodeEntry#2#1#0#SetPanAngle%180.0%0
  1045. AtNodeExit        49        2        -1            0            AtNodeEntry#2#1#0#AtTime%60%2%2%1%1%9%0%SetPanAngle&-10.0&1
  1046. AtNodeExit        3        2        -1            0            AtNodeEntry#2#1#0#SetPanAngle%270.0%0
  1047. #AtNodeExit        2        3        1            0            PlaySndResource#13212#234#0#0#0
  1048. #AtNodeExit        2        3        1            0            PlaySndResource#11823#234#0#0#0
  1049. #AtNodeExit        2        3        1            0            PlaySndResource#14151#234#0#0#0
  1050. #AtNodeExit        2        3        1            0            PlaySndResource#13514#234#0#0#0
  1051. #AtNodeExit        2        3        1            0            PlaySndResource#8880#234#0#0#0
  1052. AtNodeExit        7        -1        -1            0            Set3DObjVisState#200#0#0
  1053. AtNodeExit        8        -1        -1            0            Set3DObjVisState#504#0#0
  1054. #
  1055. #
  1056. # •••AtPanAngle•••
  1057. # •••Execute a command at the specified pan angle. A command line has this format:
  1058. # [Options are not yet defined.]
  1059. #
  1060. # AtPanAngle    NodeID    minPan    maxPan    MaxTimes    Options        Command line
  1061. #-----------      ------    ------    ------    --------    -------        ------------
  1062. #AtPanAngle        1        20.0    90.0    1            0            Beep
  1063. #AtPanAngle        -1        80.0    90.0    -1            0            PlaySndResource#30600#234#1#1#3
  1064. #
  1065. #
  1066. # •••AtTiltAngle•••
  1067. # •••Execute a command at the specified tilt angle. A command line has this format:
  1068. # [Options are not yet defined.]
  1069. #
  1070. # AtTiltAngle    NodeID    minTilt        maxTilt        MaxTimes    Options        Command line
  1071. #------------     ------    -------        -------        --------    -------        ------------
  1072. #AtTiltAngle    1        -5.0        5.0            1            0            Beep
  1073. #
  1074. #
  1075. # •••AtZoomAngle•••
  1076. # •••Execute a command at the specified zoom angle. A command line has this format:
  1077. # [Options are not yet defined.]
  1078. #
  1079. # AtZoomAngle    NodeID    minZoom    maxZoom    MaxTimes    Options        Command line
  1080. #-----------      ------    -------    -------    --------    -------        ------------
  1081. #AtZoomAngle    1        20.0    25.0    1            0            Beep
  1082. #
  1083. #
  1084. # •••DoBoth•••
  1085. # •••Execute both of the specified commands. A command line has this format:
  1086. # [Options are not yet defined.]
  1087. #
  1088. # DoBoth    Options        Command1            Command2
  1089. #-------      -------        --------            --------
  1090. #DoBoth        0            Beep                Beep
  1091. #
  1092. #
  1093. # •••DoNothing•••
  1094. # •••Do nothing. This is useful if a command (e.g., an "At" command) has side effects caused by an Option parameter.
  1095. # A command line has this format:
  1096. # [Options are not yet defined.]
  1097. #
  1098. # DoNothing        Options
  1099. #----------      -------
  1100. #DoNothing        0
  1101. #
  1102. #
  1103. # •••Beep•••
  1104. # •••Play the system alert sound. A command line has this format:
  1105. # [Options are not yet defined.]
  1106. #
  1107. # Beep
  1108. #--------
  1109. #Beep
  1110. #
  1111. #
  1112. # •••PlayMovie•••
  1113. # •••Play a QuickTime movie. A command line has this format:
  1114. # NOTE: If Width == 0, the movie has no video (it's a sound track only).
  1115. # [Mode:     0 == loop; 1 == once]
  1116. # [Options: 0 == play entire movie now (whether or not it's already playing)
  1117. #            1 == restart movie;
  1118. #            2 == toggle current state;
  1119. #            3 == start movie if not playing, otherwise ignore;
  1120. #            4 == stop movie]
  1121. # [Rotate:     0 == don't rotate; 1 == rotate]
  1122. #
  1123. # PlayMovie    ObjID    Pan        Tilt    Scale    Width    KeyRed    KeyGreen    KeyBlue        UseBuffer    UseCenter    UseKey    UseHide    UseDir    Rotate    VolAngle    Mode    Options        Name
  1124. #----------    -----    ---        ----    -----    -----    ------    --------    -------        ---------    ---------    ------    -------    ------    ------    --------    ----    -------        ----
  1125. #PlayMovie    212        0.0        0.0        1.0        40.0    0000    0000        0000        0            1            1        0        1        0        90.0        0        3            JumpRopeRot
  1126. #
  1127. #
  1128. # •••PlayTransMovie•••
  1129. # •••Play a QuickTime movie as a transition between nodes. A command line has this format:
  1130. # [Options: 0 == play entire movie;
  1131. #            1 == stop movie when mouse is clicked]
  1132. #
  1133. # PlayTransMovie    Options        Name
  1134. #---------------    -------        ----
  1135. #PlayTransMovie        0            JumpRopeRot
  1136. #
  1137. #
  1138. # •••PlayTransEffect•••
  1139. # •••Play a QuickTime video effect as a transition between nodes. A command line has this format:
  1140. #
  1141. # PlayTransEffect    FromID    ToID    MaxTimes    EffectType    EffectNum    Options
  1142. #---------------    ------    ----    --------    ---------    ---------    -------
  1143. #PlayTransEffect    1        2        -1            smpt        74            0            
  1144. #
  1145. # •••MoveScreen•••
  1146. # •••Move the screen of a QuickTime movie. A command line has this format:
  1147. # [Options are not yet defined.]
  1148. #
  1149. # MoveScreen    HorizDelta    VertDelta    Options
  1150. #-----------    ----------  ---------   -------
  1151. #
  1152. #
  1153. # •••ProcessScript•••
  1154. # •••Open and process a script file. A command line has this format:
  1155. # [Options are not yet defined.]
  1156. #
  1157. # ProcessScript        Options        FileName
  1158. #--------------        -------        --------
  1159. #ProcessScript        0            myNewScript
  1160. #
  1161. #
  1162. # *****************************************************************************************
  1163. # QuickDraw 3D Support
  1164. # *****************************************************************************************
  1165. #
  1166. # •••CreateBox•••
  1167. # •••Create a box at a specific location in a panorama. A command line has this format:
  1168. #
  1169. # CreateBox        ObjID    xCoord    yCoord    zCoord    xSize    ySize    zSize    Options
  1170. #----------        -----    ------    ------    ------    -----    -----    -----    -------
  1171. #CreateBox        200        0.0        0.0        5.0        1.0        1.0        1.0        0
  1172. #
  1173. #
  1174. # •••CreateCone•••
  1175. # •••Create a cone at a specific location in a panorama. A command line has this format:
  1176. #
  1177. # CreateCone    ObjID    xCoord    yCoord    zCoord    majRadius    minRadius    Height        Options
  1178. #----------        -----    ------    ------    ------    ---------    ---------    ------        -------
  1179. #CreateCone        201        4.7        -5.0    18.0    5.0            5.0            5.0            0
  1180. #
  1181. #
  1182. # •••CreateCylinder•••
  1183. # •••Create a cylinder at a specific location in a panorama. A command line has this format:
  1184. #
  1185. # CreateCylinder    ObjID    xCoord    yCoord    zCoord    majRadius    minRadius    Height        Options
  1186. #---------------    -----    ------    ------    ------    ---------    ---------    ------        -------
  1187. #CreateCylinder        202        4.7        -5.0    18.0    5.0            5.0            5.0            0
  1188. #
  1189. #
  1190. # •••CreateEllipsoid•••
  1191. # •••Create an ellipsoid at a specific location in a panorama. A command line has this format:
  1192. #
  1193. # CreateEllipsoid    ObjID    xCoord    yCoord    zCoord    majRadius    minRadius    Height        Options
  1194. #---------------    -----    ------    ------    ------    ---------    ---------    ------        -------
  1195. CreateEllipsoid        203        4.7        10.0    28.0    2.0            2.0            2.0            0
  1196. #
  1197. #
  1198. # •••CreateTorus•••
  1199. # •••Create a torus at a specific location in a panorama. A command line has this format:
  1200. #
  1201. # CreateTorus        ObjID    xCoord    yCoord    zCoord    majRadius    minRadius    Height        Ratio    Options
  1202. #---------------    -----    ------    ------    ------    ---------    ---------    ------        -----    -------
  1203. #CreateTorus        204        1.0        0.0        2.0        0.5            0.5            0.3            1.0        0
  1204. #
  1205. #
  1206. # •••CreateRectangle•••
  1207. # •••Create a rectangle at a specific location in a panorama. A command line has this format:
  1208. #
  1209. # CreateRectangle    ObjID    xO        yO        zO        x1        y1        z1        x2        y2        z2        x3        y3        z3        x4        y4        z4        Options
  1210. #----------------    -----    --        --        --        --        --        --        --        --        --        --        --        --        --        --        --        -------
  1211. CreateRectangle        200        4.7        -5.0    18.0    -2.0    -1.6    0.0        -2.0    1.6        0.0        2.0        1.6        -1.0    2.0        -1.6    -1.0    0    
  1212. CreateRectangle        504        0.0        13.9    23.0    -2.7    -3.3    -3.8    -2.7    3.3        -3.8    2.7        3.3        -0.3    2.7        -3.3    -0.3    0    
  1213. #
  1214. #
  1215. # •••Open3DMFFile•••
  1216. # •••Load a 3DMF file at a specific location in a panorama. A command line has this format:
  1217. #
  1218. # Open3DMFFile    ObjID    xCoord    yCoord    zCoord    Options        File
  1219. #-------------  -----    ------    ------    ------    -------        ----
  1220. #Open3DMFFile    150        10.0    0.0        5.0        0            car
  1221. #Open3DMFFile    150        -10.0    0.0        25.0        0        Teapot
  1222. #
  1223. #
  1224. # •••Set3DObjColor•••
  1225. # •••Set the color of a 3D object. A command line has this format:
  1226. #
  1227. # Set3DObjColor        ObjID    Red        Green    Blue    Options        
  1228. #--------------        -----    ---        -----    ----    -------        
  1229. Set3DObjColor        204        1.0        0.0        1.0        0    
  1230. #
  1231. #
  1232. # •••Set3DObjTransp•••
  1233. # •••Set the transparency level of a 3D object. A command line has this format:
  1234. #
  1235. # Set3DObjTransp    ObjID    Red        Green    Blue    Options        
  1236. #---------------    -----    ---        -----    ----    -------        
  1237. Set3DObjTransp        204        1.0        0.0        1.0        0    
  1238. #
  1239. #
  1240. # •••Set3DObjInterp•••
  1241. # •••Set the interpolation style of a 3D object. A command line has this format:
  1242. # {Style: 0 == none; 1 == vertex; 2 == pixel]
  1243. #
  1244. # Set3DObjInterp        ObjID    Style    Options        
  1245. #---------------        -----    -----    -------        
  1246. Set3DObjInterp            204        1        0    
  1247. #
  1248. #
  1249. # •••Set3DObjBackface•••
  1250. # •••Set the backfacing style of a 3D object. A command line has this format:
  1251. # {Style: 0 == both; 1 == remove; 2 == flip]
  1252. #
  1253. # Set3DObjBackface        ObjID    Style    Options        
  1254. #-----------------        -----    -----    -------        
  1255. #Set3DObjBackface        204        1        0    
  1256. #
  1257. #
  1258. # •••Set3DObjFill•••
  1259. # •••Set the fill style of a 3D object. A command line has this format:
  1260. # {Style: 0 == filled; 1 == edges; 2 == points]
  1261. #
  1262. # Set3DObjFill        ObjID    Style    Options        
  1263. #-------------        -----    -----    -------        
  1264. Set3DObjFill        204        0        0    
  1265. #
  1266. #
  1267. # •••Set3DObjLocation•••
  1268. # •••Set the location of a 3D object. A command line has this format:
  1269. # [Options: 0 == location is absolute; 1 == location is relative]
  1270. #
  1271. # Set3DObjLocation        ObjID    xCoord    yCoord    zCoord    Options        
  1272. #-----------------        -----    ------    ------    ------    -------        
  1273. #Set3DObjLocation        0            
  1274. #
  1275. #
  1276. # •••Set3DObjRotation•••
  1277. # •••Set the rotation of a 3D object. A command line has this format:
  1278. # [Options: 0 == rotation is absolute; 1 == rotation is relative]
  1279. #
  1280. #
  1281. # Set3DObjRotation        ObjID    xRotat    yRotat    zRotat    Options        
  1282. #-----------------        -----    ------    ------    ------    -------        
  1283. #Set3DObjRotation        200        8.0        8.0        8.0        1    
  1284. #Set3DObjRotation        128        5.0        5.0        5.0        1    
  1285. Set3DObjRotation        203        0.0        5.0        0.0        0    
  1286. #
  1287. #
  1288. # •••Set3DObjRotState•••
  1289. # •••Set the rotation of a 3D object on or off. A command line has this format:
  1290. # [State: 0 == stop; 1 == start; 2 == toggle current state]
  1291. #
  1292. # Set3DObjRotState        ObjID    State    Options    
  1293. #-----------------        -----    -----   -------    
  1294. Set3DObjRotState        203        1        0        
  1295. #
  1296. #
  1297. # •••Set3DObjVisState•••
  1298. # •••Set the visibility of a 3D object on or off. A command line has this format:
  1299. # [State: 0 == hide; 1 == show; 2 == toggle current state]
  1300. #
  1301. # Set3DObjVisState        ObjID    State    Options    
  1302. #-----------------        -----    -----   -------    
  1303. Set3DObjVisState        200        0        0                
  1304. Set3DObjVisState        203        0        0                
  1305. Set3DObjVisState        504        0        0                
  1306. #
  1307. #
  1308. # •••Set3DObjTexture•••
  1309. # •••Set the texture of a 3D object. A command line has this format:
  1310. # [Movie: 0 == no; 1 == yes]
  1311. #
  1312. # Set3DObjTexture        ObjID    Movie    Options        Pathname
  1313. #----------------        -----    -----    -------        --------
  1314. #Set3DObjTexture        200        1        0            Jetsons3.mov    
  1315. Set3DObjTexture            203        0        0            world    
  1316. Set3DObjTexture            504        0        0            monroePICT    
  1317. #Set3DObjTexture        128        0        0            tiles    
  1318. #Set3DObjTexture        128        1        0            JumpRope    
  1319. #
  1320. # •••Destroy3DObject•••
  1321. # •••Destroy a 3D object. A command line has this format:
  1322. # [Options are not yet defined.]
  1323. #
  1324. # Destroy3DObject        ObjID    Options
  1325. #----------------        -----    -------
  1326. #Destroy3DObject        200        0
  1327. #
  1328. #
  1329. # •••Set3DSndLocation•••
  1330. # •••Set the location of a localized sound. A command line has this format:
  1331. # [Options: 0 == location is absolute; 1 == location is relative]
  1332. #
  1333. # Set3DSndLocation        ObjID    xCoord    yCoord    zCoord    Options        
  1334. #-----------------        -----    ------    ------    ------    -------        
  1335. #
  1336. #
  1337. # •••SetVariable•••
  1338. # •••Set the value of a variable. A command line has this format:
  1339. # [VarName is any alphabetic string, up to 32 characters]
  1340. # [VarValue is any 32-bit signed integer]
  1341. # [if Options == 0, value is absolute; if Options == 1, value is relative]
  1342. #
  1343. # SetVariable        VarName        VarValue    Options        
  1344. #------------        -------        --------    -------    
  1345. #
  1346. #
  1347. # •••If•••
  1348. # •••Test the value of a variable and execute a command if necessary. A command line has this format:
  1349. # [VarName is any alphabetic string, up to 32 characters]
  1350. # [Op is: =, ==, !=, <, <=, >, >=]
  1351. # [VarValue is any 32-bit signed integer]
  1352. # [Options are not yet defined.]
  1353. #
  1354. # If    VarName        Op    VarValue    Options        Command    
  1355. #---    -------        --    --------    -------        -------
  1356. #
  1357. #
  1358. # •••SetSpriteVisState•••
  1359. # •••Set the visibility of a sprite on or off. A command line has this format:
  1360. # [State: 0 == hide; 1 == show; 2 == toggle current state]
  1361. # [Options are not yet defined.]
  1362. #
  1363. # SetSpriteVisState        SpriteID    State    Options    
  1364. #------------------        -------        -----   -------    
  1365. SetSpriteVisState        200            0        0                
  1366. #
  1367. #
  1368. # •••SetSpriteLayer•••
  1369. # •••Set the layer of a sprite. A command line has this format:
  1370. # [Options are not yet defined.]
  1371. #
  1372. # SetSpriteLayer    SpriteID    Layer    Options    
  1373. #---------------    -------        -----   -------    
  1374. SetSpriteLayer        200            1        0                
  1375. #
  1376. #
  1377. # •••SetSpriteGraphicsMode•••
  1378. # •••Set the graphics mode of a sprite. A command line has this format:
  1379. # [Options are not yet defined.]
  1380. #
  1381. # SetSpriteGraphicsMode        SpriteID    Mode    Options    
  1382. #----------------------        -------        -----   -------    
  1383. SetSpriteGraphicsMode        200            1        0    
  1384. #
  1385. #            
  1386. # •••SetSpriteImageIndex•••
  1387. # •••Set the image index of a sprite. A command line has this format:
  1388. # [Options are not yet defined.]
  1389. #
  1390. # SetSpriteImageIndex    SpriteID    Index    Options    
  1391. #--------------------    -------        -----   -------    
  1392. SetSpriteImageIndex        200            1        0                
  1393. #
  1394. #            
  1395. # •••SetSpriteMatrix•••
  1396. # •••Set the matrix of a sprite. A command line has this format:
  1397. # [Options are not yet defined.]
  1398. #
  1399. # SetSpriteMatrix    SpriteID    r0c0    r0c1    r0c2    r1c0    r1c1    r1c2    r2c0    r2c1    r2c2    Options    
  1400. #----------------    -------        ----    ----    ----    ----    ----    ----    ----    ----    ----    -------    
  1401. SetSpriteMatrix        200            1        0        0        0        1        0        2.0        2.0        1        0        
  1402. #
  1403. #            
  1404. # •••SetSpriteLocation•••
  1405. # •••Set the location of a sprite. A command line has this format:
  1406. # [Options: 0 == location is absolute; 1 == location is relative]
  1407. #
  1408. # SetSpriteLocation        SpriteID    H        V        Options    
  1409. #------------------        -------        ----    ----    -------    
  1410. SetSpriteLocation        200            10        200        0        
  1411. #
  1412. # •••SetTrackState•••
  1413. # •••Enable or disable the specified track in a movie. A command line has this format:
  1414. # [ObjID: the object ID of the movie that contains the track to enable/disable]
  1415. # [State: 0 == disable; 1 == enable; 2 == toggle current state]
  1416. # [Index: the track's index]
  1417. # [Options are not yet defined.]
  1418. #
  1419. # SetTrackState        ObjID        State        Index        Options
  1420. #--------------     -----        -----        -----        -------
  1421. SetTrackState        100            1            1            0
  1422. #
  1423. # •••SetTrackLayer•••
  1424. # •••Set the layer of a specified track in a movie. A command line has this format:
  1425. # [ObjID: the object ID of the movie that contains the track]
  1426. # [Layer: the track's desired layer]
  1427. # [Index: the track's index]
  1428. # [Options are not yet defined.]
  1429. #
  1430. # SetTrackLayer        ObjID        Layer        Index        Options
  1431. #--------------     -----        -----        -----        -------
  1432. SetTrackLayer        100            1            1            0
  1433. #
  1434. # •••SetMovieTime•••
  1435. # •••Set the current time of the specified movie. A command line has this format:
  1436. # [ObjID: the object ID of the movie]
  1437. # [Time: the movie's desired time; this value is relative to the movie's time scale]
  1438. # [Options are not yet defined.]
  1439. #
  1440. # SetMovieRate        ObjID        Time        Options
  1441. #--------------     -----        ----        -------
  1442. SetMovieRate        100            0            0
  1443. #
  1444. # •••SetMovieRate•••
  1445. # •••Set the rate of the specified movie. A command line has this format:
  1446. # [ObjID: the object ID of the movie]
  1447. # [Rate: the movie's desired rate; this is interpreted as a *Fixed* value]
  1448. # [Options are not yet defined.]
  1449. #
  1450. # SetMovieRate        ObjID        Rate        Options
  1451. #--------------     -----        ----        -------
  1452. SetMovieRate        100            65536        0
  1453. #
  1454. # •••SetMovieTimeScale•••
  1455. # •••Set the time scale of the specified movie. A command line has this format:
  1456. # [ObjID: the object ID of the movie]
  1457. # [Scale: the movie's desired time scale]
  1458. # [Options are not yet defined.]
  1459. #
  1460. # SetMovieTimeScale        ObjID        Scale        Options
  1461. #------------------     -----        -----        -------
  1462. SetMovieTimeScale        100            600            0
  1463.  
  1464.